/*Opciones de Cabecera*/
header{ package pl.equipo13.p6; }
/* Analizador lexico */
class AnalexGDL extends Lexer;
options{
    importVocab = AnasintGDL;
 	charVocabulary = '\3'..'\377';
}

tokens{
	GRAPH = "graph";
	NODE = "node";
	EDGE = "edge";
	TITLE = "title";
	LABEL = "label";
	TARGET = "target";
	BORDERSTYLE = "borderstyle";
	SOLID = "solid";
	DASHED = "dashed";
	DOTTED = "dotted";
	SOURCE = "source";
	ARROWSTYLE = "arrowstyle";
	LINE = "line";
	NONE = "none";
}

protected LETRA : ('a'..'z');
protected COMILLAS: '"';
protected NUEVA_LINEA: ('\n' | "\r\n") {newline();};
IDENT: (LETRA)+;

protected COMENTARIOBARRA: "//";
COMENTARIO: COMENTARIOBARRA (options {greedy=false;}:.)* NUEVA_LINEA {$setType(Token.SKIP);};

CADENA: COMILLAS (options { greedy=false; }:.)* COMILLAS;
BLANCO: (' '|'\t'|'\n'|"\r\n"){$setType(Token.SKIP);};
DOSPUNTOS: ':';
ALLAVE: '{';
CLLAVE: '}';